"""

1： 一级标题
2： 二级标题
3： 三级标题
4:  普通文本
"""

import json

origin_list = [
    {'id': 0, 'value': '收藏', 'type': 1, 'parent_id': -1},
    {'id': 1, 'value': '记录收藏的一些话', 'type': 4, 'parent_id': 0},
    {'id': 2, 'value': '名人名句', 'type': 2, 'parent_id': 0},
    {'id': 3, 'value': '村上村树', 'type': 3, 'parent_id': 2},
    {'id': 4, 'value': '那里会有人喜欢孤独', 'type': 4, 'parent_id': 3},
    {'id': 5, 'value': '不过是不喜欢失望', 'type': 4, 'parent_id': 3},
    {'id': 6, 'value': '土味情话', 'type': 2, 'parent_id': 0},
    {'id': 7, 'value': '在所有的道别里，我最喜欢明天', 'type': 4, 'parent_id': 6},
    {'id': 8, 'value': '创作', 'type': 1, 'parent_id': -1},
    {'id': 9, 'value': '诗歌', 'type': 2, 'parent_id': 8},
    {'id': 10, 'value': '螃蟹在剥我的壳', 'type': 4, 'parent_id': 9},
    {'id': 11, 'value': '笔记本在写我', 'type': 4, 'parent_id': 9},
    {'id': 12, 'value': '漫天的我落在枫叶上雪花上', 'type': 4, 'parent_id': 9},
    {'id': 13, 'value': '而你在想我', 'type': 4, 'parent_id': 9},
    {'id': 14, 'value': '现代文学', 'type': 2, 'parent_id': 8},
    {'id': 15, 'value': '你的过去我来不及参与，你的未来我奉陪到底', 'type': 4, 'parent_id': 14}

]
print(origin_list)


def get_json_tree(data, parent_id):
    nodes = []
    for item in data:
        if item['parent_id'] == parent_id:
            new_node = {'content': item['value'], 'type': item['type'], 'nodes': get_json_tree(data, item['id'])}
            nodes.append(new_node)
    return nodes


result_json = get_json_tree(origin_list, -1)
print(result_json)

json.dump(result_json, open('result.json', mode='w', encoding='utf-8'), ensure_ascii=False)
